<?	
	/* Se asegura que el archivo es incluido por el index */
	defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
		$this->oTmpObject = new Usuario_frm( $this );
	
	class Usuario_frm extends Frm
	{
	function setValue ( $ncUsuario )
		{
			$cSql = "SELECT  cNombre,  cApellido,  cEmail,  dNacimiento,  cAlias,  ncGenero,  cArchivo,  ncPais,  ncUbicacion,  cUbicacion,  cDireccion,  cTelefono,  cClave,  cDescripcion,  bActivo,  cRoles,  cDocumento
				FROM gtUsuario
				WHERE ncUsuario = '$ncUsuario' ";
			$aDatos = $this->oDatabase->getArray($cSql);	
			$this->setFieldsArray ( $aDatos );
		}
	function Usuario_frm( &$oModule )
		{
			$this->Frm( $oModule );
			//Crea los Objetos de los campos de edicion
			$this->aFields['ncUsuario']			= new Input( "Codigo", "ncUsuario" , '', false, true);
			$this->aFields['cNombre']			= new InputText( "Nombre", "cNombre" );
			$this->aFields['cApellido']			= new InputText( "Apellido", "cApellido" );
			$this->aFields['cEmail']				= new InputText( "Email", "cEmail" );
			$this->aFields['dNacimiento']		= new InputDate( "Nacimiento", "dNacimiento" );
			$this->aFields['cAlias']					= new InputText( "Alias", "cAlias" );
			$this->aFields['ncGenero']			= new InputNumber( "Genero", "ncGenero" );
			$this->aFields['cArchivo']				= new InputText( "Archivo" ,"cArchivo" );
			$this->aFields['ncPais']				= new InputNumber( "Pais", "ncPais" );
			$this->aFields['ncUbicacion']		= new InputNumber( "Ubicacion", "ncUbicacion" );
			$this->aFields['cUbicacion']			= new InputText( "Ubicacion", "cUbicacion" );
			$this->aFields['cDireccion']			= new InputText( "Direccion", "cDireccion" );
			$this->aFields['cTelefono']			= new InputText( "Telefono", "cTelefono" );
			$this->aFields['cClave']				= new InputText( "Clave" , "cClave" );
			$this->aFields['cConfirmaClave']	= new InputText( "Confirmacion", "cConfirmaClave" );
			$this->aFields['cDescripcion']		= new InputText( "Descripcion", "cDescripcion" );
			$this->aFields['bActivo']				= new InputText( "Activo", "bActivo" );
			$this->aFields['cRoles']				= new InputCheck( "Roles",  "cRoles" );			
			$this->aFields['cDocumento']		= new InputText( "Documento", "cDocumento" );	
		}	
	function setLevel( $nLevel)
		{
			switch ( $nLevel )
			{
				case 2: 
					$this->aInput = array ('ncUsuario','cNombre','cApellido','cEmail','cDireccion','cTelefono','cClave' ,'cRoles' );
					//$this->aInput = array ('ncUsuario','cNombre','cApellido','cEmail','dNacimiento','cAlias','ncGenero','cArchivo','ncPais','ncUbicacion','cUbicacion','cDireccion','cTelefono','cClave','cDescripcion','nqLogin','dUmoLogin','bActivo','cRoles','cDocumento' );
					break;
			}
		}
	function initializeForm()
		{
			// Si viene el Ubicacion hace el retrieve
				if ( $this->isRetrievable() && $this->aFields['ncUsuario']->getValue() )
				{
					$this->setValue( $this->aFields['ncUsuario']->getValue() );
				}
			// Configura el Titulo
				$this->setLabel( "Cliente" );	
			return true;
		}
	function initializeField( $cField , &$oField )
		{			
			switch ( $cField )
			{
				case 'cRoles':
					$oField->setMultiple( true );
					$oField->setForm( $this );
					initializeActores($oField);
				break;
				case 'cClave':
				case 'cConfirmaClave':
					$oField->setPassword(true);
					$oField->setPassword(true);
				break;
			}
		}
	}
?>